Developers and users of applications such as web applications may rely on execution environments to ensure that their applications execute in accordance with user expectations. Dynamic execution environments such as JAVASCRIPT execution environments may define reflection interfaces that allow applications to dynamically introspect and modify core system objects. However, this may lead to virtualization events, in which, for example, a virtualizing enclosing environment may present an application with an ostensibly unmodified execution environment (e.g., a JAVASCRIPT runtime); however, the execution environment may have been modified by the virtualizing enclosing environment, which may cause the application to experience unexpected results (or to potentially experience undesirable interference from the virtualizing enclosing environment).